Communication systems have been developed to deliver modular applications that are sequenced or named as part of normal call signaling. The promise to these systems is that many applications can be written for a variety of solution spaces. Heretofore, an application server has only been able to provide one sophisticated application with releases that occur, at best, on a semi-annual basis.
In most communication systems, call treatment features are currently provided by a single, monolithic feature server. Adding a new or upgrading an existing call treatment feature on a server requires a new version of software and requires the customer to upgrade the entire server. Such upgrades can cause operational downtime and can have impacts that are not limited to users of the new/upgraded feature. In other words, current communication systems do not enable convenient system upgrades nor do they enable simple upgrades on a per user basis.
To achieve more rapid development, an ecosystem that allows for the independent development and deployment of applications is desired.